EventFormattingAgent: Partial revert: Do not include "agent" to payload.

Akinori MUSHA 10 years ago
parent
commit
307ef15b8e

+ 0 - 7
app/models/agent.rb

@@ -402,12 +402,5 @@ class AgentDrop < Liquid::Drop
402 402
     def to_liquid
403 403
       AgentDrop.new(self)
404 404
     end
405
-
406
-    def to_h
407
-      drop = to_liquid
408
-      AgentDrop.public_instance_methods(false).each_with_object({}) { |attr, hash|
409
-        hash[attr.to_s] = drop.__send__(attr)
410
-      }
411
-    end
412 405
   end
413 406
 end

+ 1 - 1
app/models/agents/event_formatting_agent.rb

@@ -106,7 +106,7 @@ module Agents
106 106
 
107 107
     def receive(incoming_events)
108 108
       incoming_events.each do |event|
109
-        payload = perform_matching({ 'agent' => event.agent.to_h }.merge(event.payload))
109
+        payload = perform_matching(event.payload)
110 110
         opts = interpolated(EventDrop.new(event, payload))
111 111
         formatted_event = opts['mode'].to_s == "merge" ? event.payload.dup : {}
112 112
         formatted_event.merge! opts['instructions']

+ 2 - 9
spec/models/agents/event_formatting_agent_spec.rb

@@ -8,8 +8,7 @@ describe Agents::EventFormattingAgent do
8 8
             :instructions => {
9 9
                 :message => "Received {{content.text}} from {{content.name}} .",
10 10
                 :subject => "Weather looks like {{conditions}} according to the forecast at {{pretty_date.time}}",
11
-                :agent_type => "{{agent.type}}",
12
-                :agent_type_via_matching => "{{agent_info.type}}",
11
+                :agent => "{{agent.type}}",
13 12
             },
14 13
             :mode => "clean",
15 14
             :matchers => [
@@ -18,11 +17,6 @@ describe Agents::EventFormattingAgent do
18 17
                     :regexp => "\\A(?<time>\\d\\d:\\d\\d [AP]M [A-Z]+)",
19 18
                     :to => "pretty_date",
20 19
                 },
21
-                {
22
-                    :path => "{{agent.type}}",
23
-                    :regexp => "\\A(?<type>.*)\\z",
24
-                    :to => "agent_info",
25
-                },
26 20
             ],
27 21
             :skip_created_at => "false"
28 22
         }
@@ -70,13 +64,12 @@ describe Agents::EventFormattingAgent do
70 64
     it "should handle Liquid templating in instructions" do
71 65
       @checker.receive([@event])
72 66
       Event.last.payload[:message].should == "Received Some Lorem Ipsum from somevalue ."
73
-      Event.last.payload[:agent_type].should == "WeatherAgent"
67
+      Event.last.payload[:agent].should == "WeatherAgent"
74 68
     end
75 69
 
76 70
     it "should handle matchers and Liquid templating in instructions" do
77 71
       @checker.receive([@event])
78 72
       Event.last.payload[:subject].should == "Weather looks like someothervalue according to the forecast at 10:00 PM EST"
79
-      Event.last.payload[:agent_type_via_matching].should == "WeatherAgent"
80 73
     end
81 74
 
82 75
     it "should allow escaping" do